/**
 * 自建工作流模块
 * 当前问题：
 * 1. 工作流和业务流数据一致性问题。初步设想，使用事务同步 Transaction Synchronization，
 *
 * @see org.springframework.transaction.support.AbstractPlatformTransactionManager#processCommit(DefaultTransactionStatus)
 * @see org.springframework.transaction.support.AbstractPlatformTransactionManager#triggerBeforeCommit(org.springframework.transaction.support.DefaultTransactionStatus)
 * 使用 {@link org.springframework.transaction.support.TransactionSynchronization#beforeCommit(boolean)} 方法，将工作流推进和业务代码结合，在业务代码commit之前进行工作流推进，
 * 若发生异常，则整个事务回滚，以此解决工作流不一致的问题。
 */
package com.yiwyn.flowdemo;

import org.springframework.transaction.support.DefaultTransactionStatus;